home *** CD-ROM | disk | FTP | other *** search
- ****************************************************************
- * *
- * Supra Procedures 1.0 January, 1996 *
- * *
- * Joseph Bolin *
- * 5468 Lark Avenue *
- * Rockwell, Iowa 50469 *
- * Intenet:jbolin@info.niacc.cc.ia.us *
- * *
- * Copyright 1996 by Joseph Bolin. All Rights Reserved. *
- * *
- * DOCUMENTATION *
- * *
- ****************************************************************
-
-
-
- ========
- Contents
- ========
-
-
- 1. Copyright and Distribution
- 2. Overview
- 3. Procedures
- 3a. ClipBob
- 3b. ColorBob
- 3c. CopyBob
- 3d. Curves
- 3e. InputText
- 3f. LargeText
- 3g. OutLineText
- 3h. Polygon
- 3i. ScreenSaver
- 3j. ScreenWipes
- 3k. Stencil
- 3l. Wash
- 3m. WashBob
- 3n. Zoom
-
-
- =============================
- 1. Copyright and Distribution
- =============================
-
- Supra Procedures is Copyright 1996 by Joseph Bolin
-
- Permission is granted to freely use and distribute Supra Procedures.
-
- This distribution is shareware. If you use these procedures in your own
- programs, you should send me a payment of five or ten US dollars to me at
- the address below:
-
- Joseph Bolin
- 5468 Lark Avenue
- Rockwell, Iowa 50469
-
- You may contact me at this address to report bugs, comment on procedures
- you think this should include, or anything else. Or better, if you
- have access to e-mail, contact me at: jbolin@info.niacc.cc.ia.us
-
- DISCLAIMER: Supra Procedures is provided "as is", without warranty of any
- kind. In no event will the author be liable for any direct or indirect
- damage or loss resulting from the use or misuse of these procedures.
-
-
- ===========================
- 2. Overview
- ===========================
-
-
- This is a collection of procedures for AMOS and AMOSPro. The following
- procedures should be included.
-
- ------------*------------------------------------------*--------------*
- Procedure | Use | AMOS/AMOSPRO |
- ------------*------------------------------------------*--------------*
- ClipBob | Clip a section of a bob transparent | AMOS/AMOSPRO |
- ColorBob | Color a whole bob to a new color | AMOS/AMOSPRO |
- CopyBob | Copy one bob to another | AMOSPRO |
- Curves | Several curve routines | AMOS/AMOSPRO |
- InputText | A replacement for Input command | AMOS/AMOSPRO |
- LargeText | A large text printing routine | AMOSPRO |
- OutLineText | Print outlined text | AMOS/AMOSPRO |
- Polygon | Regular polygon drawing routine | AMOS/AMOSPRO |
- ScreenSaver | Screen saver routine | AMOSPRO |
- ScreenWipes | Screen wipe routines | AMOS/AMOSPRO |
- Stencil | Stencil a portion of the screen | AMOSPRO |
- Wash | Wash a portion of the screen | AMOS/AMOSPRO |
- WashBob | Wash one color of a bob to another color | AMOSPRO |
- Zoom | Zoom by 2, 4 or 8 | AMOS/AMOSPRO |
- ------------*---------------------------------------------------------*
-
- ===========================
- 3. Procedures
- ===========================
-
- In any procedure that uses a bob, pass a negative number to use an icon.
- e.g. to color icon 3 to color 14: _COLORBOB[-3,14]
-
- You only have to include the WASHML procedure once for each program.
-
- ============================================================================
- 3a. ClipBob Make a section of a bob transparent or opaque AMOS/AMOSPRO
-
- Use: _CLIPBOB[_BOB,_XSTART,_YSTART,_XEND,_YEND,_MASK]
-
- Inputs: _BOB Bob to make/erase mask on
- _XPOS,_YPOS Coordinates of upper-left of section to mask
- _XEND,_YEND Coordinates of lower-right of section to mask
- _MASK Flag:0=Make section transparent, 1=Make section opaque
-
- Output: Make a section of a bob either transparent or opaque
- ============================================================================
- 3b. ColorBob Change a bob to one new color AMOS/AMOSPRO
-
- Use: _COLORBOB[_BOB,_COLOR]
-
- Inputs: _BOB Bob to change the color of
- _COLOR Color to change bob to
-
- Output: Change a bob to one color _COLOR.
- You must have a mask to use this properly.
- ============================================================================
- 3c. CopyBob Copy one bob to another AMOS
-
- Use: _COPYBOB[_SRCBOB,_DESTBOB]
-
- Inputs: _SRCBOB Source image
- _DESTBOB Destination image
-
- Output: Copys one bob to another, including mask.
-
- Note: You may copy from a bob to an icon or from an icon to a bob
- ============================================================================
- 3d. Curves Three curve drawing routines AMOS/AMOSPRO
-
- Use: _CURVE3[XB,YB,XC,YC,S]
- _CURVE4[XB,YB,XC,YC,XT,YT,S]
-
- Inputs: XB,YB Beginning coordinate of curve
- XE,YE Ending coordinate of curve
- XC,YC Control coordinate
- XT,YT Second control coordinate
- S Number of lines in curve
-
- Output: Draws a curve on the current screen in the current color
-
- Use: _CURVEMANY[N,S]
-
- Inputs: N Number of points in the curve
- S Number of lines in the curve
- XP(),YP() Coordinates of points of the curve
- XP(1),YP(1) are the starting coordinates
- XP(N),YP(N) are the ending coordinates
- The points between 1 and N are the control points
-
- Output: Draws a multiple point curve on the current screen
- ============================================================================
- 3e. InputText A replacement for Input command AMOS/AMOSPRO
-
- Use: _INPUT[_XPOS,_YPOS,_LENGTH,_SHOW,_DEFAULT$,_PEN,_PAPER,_CURSPEN]
-
- Inputs: _XPOS,_YPOS Coordinates of input; Not limited to multiples of 8
- _LENGTH Maximum length of string
- _SHOW Length of shown section
- _DEFAULT$ Default input
- _PEN Color of text
- _PAPER Background of text
- _CURSPEN Color of cursor
-
- Output: Param$ Inputed string
- ============================================================================
- 3f. LargeText A large text printing routine AMOSPRO
-
- Use: _LARGETEXT[_XPOS,_YPOS,_TEXT$,_PEN,_PAPER,_WIDTH,_HEIGHT]
-
- Inputs: _XPOS,_YPOS Coordinates of text
- _TEXT$ Text to print
- _PEN Color of text
- _PAPER Background color of text
- _WIDTH Integer multiple of normal text width
- _HEIGHT Integer multiple of normal text height
-
- Output: Prints expanded text on the current screen
- ============================================================================
- 3g. OutLineText Print outlined text AMOS/AMOSPRO
-
- Use: _PRINTOUTLINE[_XPOS,_YPOS,_TEXT$,_COLOR,_OUTLINE]
-
- Inputs: _XPOS,_YPOS Coordinates of text
- _TEXT$ Text to print
- _COLOR Color of text
- _OUTLINE Color of outline of text
-
- Output: Prints outlined text on the current screen
- ============================================================================
- 3h. Polygon Regular polygon drawing routine AMOS/AMOSPRO
-
- Use: _POLYGON[_XPOS,_YPOS,_POINTS,_WIDTH,_HEIGHT,_ROTATE,_FILLED]
-
- Inputs: _XPOS,_YPOS Center of polygon
- _POINTS Number of points in polygon
- _WIDTH Width of polygon
- _HEIGHT Height of polygon
- _ROTATE Rotation angle of polygon in degrees
- _FILLED Flag for fill:0=No, 1=Yes
-
- Output: Draws a regular polygon on the current screen
- with the current ink colors and the current pattern
- ============================================================================
- 3i. ScreenSaver Screen saver routine AMOSPRO
-
- Use: _SCREENSAVER[_TIME,RESET] Call this procedure in the main loop
-
- Inputs: _TIME Number of jiffies before blanking
- RESET If non-zero, counter before blanking will be reset
-
- Outputs: When screen is blanked _SCREENBLANK procedure is called
- _SAVERLAST =Last time since last mouse movement or key press
- _SAVERLENGTH =Length since last mouse movement or key press
- _SAVERX,_SAVERY=Last mouse position
- Param =-1 if screen blank, 0 otherwise
-
- Note: This procedure does not check keypresses, so you should set the
- parameter RESET when a key is pressed
- ============================================================================
- 3j. ScreenWipes Screen Wipe procedures AMOS/AMOSPRO
-
- _WIPE1[_SOURCE,_DEST] : Wipes source screen into destination
- _WIPE2[_COLOR] : Clears current screen to _COLOR
- _WIPE3[_COLOR] : Clears current screen to _COLOR
- ============================================================================
- 3k. Stencil Stencil a portion of the screen AMOSPRO
-
- Use: _STENCIL[_SOURCE,_DESTBOB]
-
- Inputs: _SOURCE Screen to stencil
- _DESTBOB Bob to make into stencil
- _STENCIL() Colors to stencil: 0=No, 1=Yes
-
- Output: Makes a bob from the source screen with the
- unstenciled colors masked out
- ============================================================================
- 3l. Wash Wash a portion of the screen AMOS/AMOSPRO
-
- Use: _WASH[_STARTX,_STARTY,_ENDX,_ENDY]
-
- Inputs: _STARTX,_STARTY Coordinates of up-left
- _ENDX,_ENDY Coordinates of down-right
- _WASH() Wash table: _WASH(x)=Color to change x to
-
- Output: Washs an area of the screen
- ============================================================================
- 3m. WashBob Wash one color of a bob to another color AMOSPRO
-
- Use: _WASHBOB[_BOB,_COLOR,_CHANGE]
-
- Inputs: _BOB Bob to change to color of
- _COLOR Color to change
- _CHANGE Color to change it to
-
- Output: Washes one color of a bob to another color
- ============================================================================
- 3n. Zoom Zoom by 2, 4, or 8
-
- Use: _ZOOM[_POWER,_SOURCE,_XSTART,_YSTART,_XEND,_YEND,_XDEST,_YDEST]
-
- Inputs: _POWER Zoom factor: 2, 4, or 8
- _SOURCE Screen to zoom from
- _XSTART Zoom start x pos (multiple of 16)
- _YSTART Zoom start y pos
- _XEND Zoom end x pos (+1)
- _YEND Zoom end y pos (+1)
- _DEST Screen to zoom to
- _XDEST Zoom destination x pos (multiple of 16)
- _YDEST Zoom destination y pos
-
- Output: Zooms the source area to the destination area and expands it
-
- Note: For Zoom factors of 2 or 4, the X size must be a multiple of 16
- For a Zoom factor of 8, the X size must be a multiple of 8
- ============================================================================
-